package models

import (
	"time"

	"gorm.io/gorm"
)

type Kline struct {
	gorm.Model
	Symbol       string    `json:"symbol" gorm:"column:symbol"`               // 交易品种
	Exchange     string    `json:"exchange" gorm:"column:exchange"`           // 交易所
	DateTime     time.Time `json:"datetime" gorm:"column:datetime"`           // 时间
	Interval     string    `json:"interval" gorm:"column:interval"`           // K线周期
	Volume       float64   `json:"volume" gorm:"column:volume"`               // 成交量
	Turnover     float64   `json:"turnover" gorm:"column:turnover"`           // 成交额
	OpenInterest int64     `json:"open_interest" gorm:"column:open_interest"` // 持仓量
	OpenPrice    float64   `json:"open_price" gorm:"column:open_price"`       // 开盘价
	HighPrice    float64   `json:"high_price" gorm:"column:high_price"`       // 最高价
	LowPrice     float64   `json:"low_price" gorm:"column:low_price"`         // 最低价
	ClosePrice   float64   `json:"close_price" gorm:"column:close_price"`     // 收盘价
}

func (Kline) TableName() string {
	return "dbbardata"
}
